Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

240
Visualizações
El comodín (*) no funciona. Al buscar en una carpeta un documento con un tipo de archivo variable, la función "*" parece no funcionar

Tengo problemas con el comodín * . Quiero buscar un documento en una carpeta y devolver su ubicación. El problema es que el documento puede ser .xlsx o .pdf ; por lo tanto, quería agregar "*" al nombre para que encontrara cualquiera.

Tengo esto:

 Sub Test2() Dim FSO As New FileSystemObject Dim myFolder As Scripting.Folder Dim mySubFolder As Scripting.Folder Dim myFile As File Set myFolder = FSO.GetFolder("Folder Path") Set Team3 = ThisWorkbook.Worksheets("Team 3 & 3a") Rng = Team3.Range("B4:B9") For Each batch In Rng Filename = batch & "*" For Each mySubFolder In myFolder.SubFolders For Each myFile In mySubFolder.Files If myFile.Name = Filename Then MsgBox myFile.Path Exit For End If Next Next Next End Sub

El problema que tengo es que el comodín * no parece funcionar y parece interpretarlo como texto. Si reemplazo el "*" con ".pdf" , de hecho encuentra los archivos, pero lo necesitaba para buscar cualquier tipo de archivo.

Eliminé la ruta de la carpeta de arriba, pero de hecho está buscando en la carpeta correcta. El código en sí funciona, es solo el "*" que no parece funcionar.

Cualquier ayuda sería muy apreciada.

about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Gracias, FunThomas por ayudar con esto. No estoy seguro de cómo funciona este sitio, pero la siguiente fue la respuesta que dio.

 Sub Test2() Dim FSO As New FileSystemObject Dim myFolder As Scripting.Folder Dim mySubFolder As Scripting.Folder Dim myFile As File Set myFolder = FSO.GetFolder("Folder Path") Set Team3 = ThisWorkbook.Worksheets("Team 3 & 3a") Rng = Team3.Range("B4:B9") For Each batch In Rng Filename = batch & "*" For Each mySubFolder In myFolder.SubFolders For Each myFile In mySubFolder.Files If myFile.Name Like Filename Then MsgBox myFile.Path Exit For End If Next Next Next End Sub
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda